# Copyright 2024 Ant Group Co., Ltd.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

###############################################################################
# Bazel now uses Bzlmod by default to manage external dependencies.
# Please consider migrating your external dependencies from WORKSPACE to MODULE.bazel.
#
# For more details, please check https://github.com/bazelbuild/bazel/issues/18958
###############################################################################

module(
    name = "yacl",
    version = "0.4.5b11-nightly-20250514",
    compatibility_level = 1,
)

# --registry=https://bcr.bazel.build
bazel_dep(name = "protobuf", version = "27.3")
bazel_dep(name = "rules_proto", version = "4.0.0")
bazel_dep(name = "bazel_skylib", version = "1.7.1")
bazel_dep(name = "apple_support", version = "1.17.1")
bazel_dep(name = "rules_cc", version = "0.0.13")
bazel_dep(name = "abseil-cpp", version = "20240722.0")
bazel_dep(name = "gflags", version = "2.2.2")
bazel_dep(name = "zlib", version = "1.3.1.bcr.3")
bazel_dep(name = "msgpack-c", version = "6.1.0")
bazel_dep(name = "blake3", version = "1.5.4")
bazel_dep(name = "fmt", version = "11.0.2")
bazel_dep(name = "spdlog", version = "1.14.1")
bazel_dep(name = "rules_python", version = "0.16.2")
bazel_dep(name = "bazel_features", version = "1.24.0")
bazel_dep(name = "rules_foreign_cc", version = "0.14.0")
bazel_dep(name = "platforms", version = "0.0.11")

# self-hosted registry
bazel_dep(name = "brpc", version = "1.11.0-20241212-282bc90")
bazel_dep(name = "cpu_features", version = "0.9.0")
bazel_dep(name = "simplest-ot", version = "0.0.1")
bazel_dep(name = "libtommath", version = "0.0.0-20240407-42b3fb0")
bazel_dep(name = "tongsuo", version = "8.4.0")
bazel_dep(name = "fourqlib", version = "0.0.0-20220901-1031567")
bazel_dep(name = "libsodium", version = "1.0.18")
bazel_dep(name = "sse2neon", version = "1.7.0-20240330-8df2f48")
bazel_dep(name = "hash_drbg", version = "0.0.0-20230516-2411fa9")
bazel_dep(name = "org_interconnection", version = "0.0.1")
bazel_dep(name = "lib25519", version = "20240321")
bazel_dep(name = "mcl", version = "1.99")
bazel_dep(name = "leveldb", version = "1.23")
bazel_dep(name = "openssl", version = "3.3.2.bcr.1")

new_local_repository = use_repo_rule("@bazel_tools//tools/build_defs/repo:local.bzl", "new_local_repository")

new_local_repository(
    name = "macos_omp_x64",
    build_file = "@yacl//bazel:local_openmp_macos.BUILD",
    path = "/usr/local/opt/libomp",
)

new_local_repository(
    name = "macos_omp_arm64",
    build_file = "@yacl//bazel:local_openmp_macos.BUILD",
    path = "/opt/homebrew/opt/libomp/",
)

# test
bazel_dep(name = "googletest", version = "1.16.0.bcr.1", dev_dependency = True)
bazel_dep(name = "google_benchmark", version = "1.9.1", dev_dependency = True)
